// 项目中公共发放的文件
// 缓存
// Cookie 浏览器缓存 

// 引入下载的Cookie
import Cookies from "js-cookie";
// 存缓存 Cookie.set(存储的名字，存储的值，expires 存储的时间)
export const  SetCookie = (name ,Cookie)=>{//存储的名字 存储的值
    Cookies.set(name,Cookie,{expires:7})
}
// export 向外抛出
// 取缓存
//Cookies.get(获取缓存的名字) 返回的就是当前缓存的值
export const GetCookie = name =>Cookies.get(name);
// 删除缓存
// Cookies.remove(需要删除的缓存的名字)
export const RemoveCookie = (name)=>{
    Cookies.remove(name)
}

// localStoage 本地存储 存储量大 用户不能轻易删除 存储在计算机中 
// 因Cookie存储量较小 在需要存储大型数据放入缓存中时我们使用本地存储
// 存缓存window.localStoage.setItem（存入的名字 ，存入的数据 （不能是引用数据类型））
export const setStore = (name , obj)=>{
    window.localStorage.setItem(name , obj)
}
// 取缓存window.localStorage.getItem(要取的缓存名字)
export const getStore = name => window.localStorage.getItem(name);
// 删除指定缓存 window.localStoage.removeItem(删除的缓存名字)
export const removeStore = name =>{
    window.localStorage.removeItem(name)
}
// 清除用户电脑里面所有的本地缓存 （场景 ：退出登录） window.localStoage.clear()
export const getClear =()=>{
    window.localStorage.clear()
}
// sessionStorage 会话缓存在项目中会话缓存关闭了当前窗口就消失 所以不常用
export const setnullString = (resp)=>{
    // resp后端返回来的数据
    //当前的对象是null我们就将他变成对象
    if(!resp){
        resp={}
    }
    //如果不是null就是对象
    for(let i in resp){
        //当前{} []
        //基本数据类型
        if(resp[i] && typeof(resp[i])=="object"){
            setnullString(resp[i])
        }else{
            if(Object.is(resp[i],null)){//比较
                resp[i]={}
            }else if(resp[i] === "null"){
                resp[i]=""
            }
        }
    }
    return resp
}


